home *** CD-ROM | disk | FTP | other *** search
/ Belgian Amiga Club - ADF Collection / BS1 part 65.zip / BS1 part 65 / 3rd Day Ripper II.adf / backup / 3rdDayIntro.S < prev    next >
Text File  |  1991-07-31  |  28KB  |  1,145 lines

  1.     * --------------------------------
  2.     * 3rd Day Intro - © 1991 SECTION 9
  3.     * --------------------------------
  4.     * 8*8 Font mit 2 Planes
  5.     * LOGO 3 Planes
  6.     * Noise-Replay
  7.     * --------------------------------
  8.     * LMB - next page
  9.     * RMB - quit
  10.     * JOYB - slower scroll
  11.  
  12.     * INCDIRs are at INCBINs !!
  13.     * Die Inc-Daten sind die selben wie bei der GRMBLWRZ-Intro!!
  14.  
  15. COL_VERZ = 140        internal system-data
  16. PAGE_VERZ = 1000    don't change
  17.  
  18.     SECTION        another_small_masterpiece_bla_bla,CODE
  19. prg    movem.l        d0-a6,-(a7)
  20.     bsr.b        init
  21.     bsr.w        kill_system
  22.     bsr.w        INIT_MUSIC
  23.     lea        $dff000,a6
  24.     lea        dummy(pc),a5
  25.     bsr.w        print
  26. loop    btst        #1,(a5)
  27.     beq.b        .mouse
  28.     bra.b        .print
  29. .mouse    btst        #6,$bfe001
  30.     bne.b        .next
  31. .print    bsr.w        print
  32.     lea        page_cnt(pc),a0
  33.     move.w        #PAGE_VERZ,(a0)
  34.     bclr        #1,(a5)
  35. .next    btst        #2,$16(a6)
  36.     bne.s        loop
  37.     bsr.w        END_MUSIC
  38.     bsr.w        awake_system
  39.     bsr.w        END_MUSIC
  40.     movem.l        (a7)+,d0-a6
  41.     rts
  42.  
  43. init    bsr.w        fill        copper colors
  44.     lea        page_ptr(pc),a0
  45.     lea        pages(pc),a1
  46.     move.l        a1,(a0)
  47.     lea        star_p+2,a0
  48.     lea        stars,a1
  49.     move.l        a1,d0
  50.     move.w        d0,4(a0)
  51.     swap        d0
  52.     move.w        d0,(a0)
  53.     lea        scrptr(pc),a0
  54.     lea        scrtext(pc),a1
  55.     move.l        a1,(a0)
  56.     lea        planes+2,a0
  57.     lea        logo,a1
  58.     moveq        #3-1,d7
  59. .lp    bsr.w        init_it
  60.     addq.l        #8,a0
  61.     lea        2464(a1),a1
  62.     dbf        d7,.lp
  63.     lea        txtcop+2,a0
  64.     lea        txtdat,a1
  65.     bsr.b        init_it
  66.     addq.l        #8,a0
  67.     lea        [352/8]*150(a1),a1
  68.     bsr.b        init_it
  69.     lea        back,a1
  70.     lea        backcop+2,a0
  71.     bsr.b        init_it
  72.     lea        empty,a1
  73.     lea        emp1cop+2,a0
  74.     bsr.b        init_it
  75.     lea        emp2cop+2,a0
  76.     bsr.b        init_it
  77.     lea        emp3cop+2,a0
  78.     bsr.b        init_it
  79.     lea        emp4cop+2,a0
  80.     bsr.b        init_it
  81.     lea        scrcop+2,a0
  82.     lea        scrdat+[368/8],a1
  83.     bsr.b        init_it
  84.     addq.l        #8,a0
  85.     lea        368(a1),a1
  86.     *bsr.b        init_it
  87.     *rts
  88. init_it    move.l        a1,d0
  89.     move.w        d0,4(a0)
  90.     swap        d0
  91.     move.w        d0,(a0)
  92.     rts
  93.  
  94. newirq    movem.l        d0-a6,-(a7)
  95.     lea.l        $dff000,a6        base-reg
  96.     lea        dummy(pc),a5
  97.     bset        #0,(a5)            als irq_sync in 'loop'
  98.     lea        page_cnt(pc),a0
  99.     subq.w        #1,(a0)
  100.     bne.b        .lame
  101.     bset        #1,(a5)
  102.     move.w        #PAGE_VERZ,(a0)
  103. .lame    
  104.     btst        #7,$bfe001
  105.     beq.b        .slow
  106.     bsr.b        scroll
  107. .slow    bsr.b        scroll
  108.  
  109.     bsr.w        colors
  110.     bsr.w        move_stars
  111.     bsr.w        PLAY_MUSIC
  112.     move.w        #$4020,$9c(a6)        see ya'
  113.     movem.l        (a7)+,d0-a6
  114.     rte
  115.  
  116. scroll    lea        counter(pc),a2        immer in a2
  117.     tst.b        (a2)
  118.     bne.b        .scroll_only
  119.     move.l        scrptr(pc),a1
  120.     move.b        (a1),d2            char in d2
  121.     lea        fontlst(pc),a1
  122.     moveq        #0,d1
  123. .search    move.b        0(a1,d1.w),d0
  124.     beq.b        .unknwn            end of fontlst = 0
  125.     cmp.b        d2,d0
  126.     beq.b        .found
  127.     addq.w        #1,d1
  128.     bra.b        .search
  129. .unknwn    moveq        #26,d1            offset für 'SPACE'
  130. .found    lea        proplst(pc),a1
  131.     move.b        0(a1,d1.w),(a2)        char-breite neu in counter
  132.     lea        font,a0
  133.     add.l        d1,a0            a0 -> char in font
  134.     lea        scrdat+[368/8]+[[368-8]/8],a1
  135.     moveq        #0,d0
  136.     moveq        #0,d1
  137.     moveq        #[640/8],d2
  138.     moveq        #[368/8],d3
  139.     moveq        #16-1,d7
  140. .wblit2    btst        #14,2(a6)
  141.     bne.s        .wblit2
  142. .copy    move.b        0(a0,d0.w),0(a1,d1.w)    copy char in scroll-area
  143.     add.l        d2,d0
  144.     add.l        d3,d1
  145.     dbf        d7,.copy
  146.     lea        scrptr(pc),a0        increase scroll-ptr
  147.     addq.l        #1,(a0)
  148.     move.l        (a0),a1
  149.     tst.b        (a1)
  150.     bne.b        .no_scrtext_end
  151.     lea        scrtext(pc),a1
  152.     move.l        a1,(a0)        
  153. .no_scrtext_end
  154. .scroll_only
  155.     subq.b        #1,(a2)            a2 = counter von oben
  156.     lea        scrdat,a1
  157.     lea        2(a1),a0        scrdat+2
  158.     moveq        #-1,d0
  159.     moveq        #0,d1
  160.     move.w        #%1111100111110000,d2
  161. .wblit    btst        #14,2(a6)
  162.     bne.s        .wblit
  163.     move.l        a0,$50(a6)            A-PT (source)
  164.     move.l        a1,$54(a6)            D-PT (dest)
  165.     move.l        d0,$44(a6)            BLTAMASK
  166.     move.w        d1,$42(a6)            BLTCON1
  167.     move.w        d1,$64(a6)            A-MOD
  168.     move.w        d1,$66(a6)            D-MOD
  169.     move.w        d2,$40(a6)            BLTCON0
  170.     move.w        #[[16+1]*64]+[368/16],$58(a6)    BLTSIZE/START
  171.     rts
  172.  
  173. print    lea        page_ptr(pc),a0
  174.     move.l        (a0),a2
  175.     moveq        #2,d4            pos in line
  176.     moveq        #15-1,d6        15 lines/page
  177. .loop2    moveq        #40-1,d7        40 chars/line
  178. .loop    move.b        (a2)+,d2        char in d2
  179.     lea        fontlst(pc),a1
  180.     moveq        #0,d1
  181. .search    move.b        0(a1,d1.w),d0
  182.     beq.b        .unknwn            end of fontlst = 0
  183.     cmp.b        d2,d0
  184.     beq.b        .found
  185.     addq.w        #1,d1
  186.     bra.b        .search
  187. .unknwn    moveq        #26,d1            offset für 'SPACE'
  188. .found    lea        font,a0
  189.     add.l        d1,a0            a0 -> char in font
  190.     lea        txtdat,a1
  191.     add.l        d4,a1
  192.     moveq        #0,d0
  193.     moveq        #0,d1
  194.     moveq        #[640/8],d2
  195.     moveq        #[352/8],d3
  196.     moveq        #8-1,d5
  197. .copy    move.b        0(a0,d0.w),0(a1,d1.w)    copy char 1st plane
  198.     add.l        d2,d0
  199.     add.l        d3,d1
  200.     dbf        d5,.copy
  201.     add.l        #[[352/8]*[150-8]],d1
  202.     moveq        #8-1,d5
  203. .copy2    move.b        0(a0,d0.w),0(a1,d1.w)    copy char 2nd plane
  204.     add.l        d2,d0
  205.     add.l        d3,d1
  206.     dbf        d5,.copy2
  207.     addq.l        #1,d4            next char
  208.     cmp.b        #" ",(a2)
  209.     beq.b        .no_wait
  210.     bclr        #0,(a5)            dummy
  211. .wait    btst        #0,(a5)
  212.     beq.b        .wait
  213. .no_wait
  214.     lea        $dff000,a6
  215.     btst        #2,$16(a6)
  216.     beq.b        .out
  217.     dbf        d7,.loop        char loop
  218.     add.l        #[[352/8]*9]+4,d4
  219.     dbf        d6,.loop2        line loop
  220.  
  221.     lea        page_ptr(pc),a0
  222.     tst.b        (a2)
  223.     bne.b        .next
  224.     lea        pages(pc),a2
  225. .next    move.l        a2,(a0)
  226. .out    rts
  227.  
  228. colors    lea        col_cnt(pc),a0
  229.     subq.w        #1,(a0)
  230.     bne.b        col_out
  231.     move.w        #COL_VERZ,(a0)
  232.     lea        cols(pc),a0
  233.     lea        30(a0),a1
  234.     lea        60(a0),a2
  235.     move.w        (a0),d0
  236.     move.w        (a1),d1
  237.     move.w        (a2),d2
  238.     moveq        #15-1,d7
  239. .loop    move.w        2(a0),(a0)+
  240.     move.w        2(a1),(a1)+
  241.     move.w        2(a2),(a2)+
  242.     dbf        d7,.loop
  243.     move.w        d0,-(a0)
  244.     move.w        d1,-(a1)
  245.     move.w        d2,-(a2)
  246. fill    lea        colscop+2,a0        fill in cols
  247.     lea        cols(pc),a1
  248.     moveq        #15-1,d7
  249. .loop2    move.w        (a1),(a0)
  250.     move.w        30(a1),4(a0)
  251.     move.w        60(a1),8(a0)    
  252.     lea        16(a0),a0
  253.     addq.l        #2,a1
  254.     dbf        d7,.loop2
  255. col_out    rts
  256.  
  257. move_stars
  258.     lea        stars+1,a0
  259.     moveq        #[[[end_stars-stars]/8]/3]-1,d7
  260. .st_lp    addq.b        #1,(a0)
  261.     addq.b        #2,8(a0)
  262.     addq.b        #3,16(a0)
  263.     lea        24(a0),a0
  264.     dbf        d7,.st_lp
  265.     rts
  266.  
  267. kill_system
  268.     move.l        $4.w,a6
  269.     lea        gfxname(pc),a1
  270.     jsr        -408(a6)
  271.     move.l        d0,a1
  272.     lea        oldcop1(pc),a0
  273.     move.l        $26(a1),(a0)
  274.     lea        oldcop2(pc),a0
  275.     move.l        $32(a1),(a0)
  276.     jsr        -414(a6)
  277.     lea        $dff000,a6
  278.     lea        intena(pc),a0
  279.     move.w        $1c(a6),(a0)
  280.     lea        dmacon(pc),a0
  281.     move.w        $2(a6),(a0)
  282.     lea        adkcon(pc),a0
  283.     move.w        $10(a6),(a0)
  284.     move.w        #$7fff,$9a(a6)
  285.     bsr.b        wait_vert_blank
  286.     move.w        #$7fff,$96(a6)
  287.     lea        newcop,a0
  288.     move.l        a0,$80(a6)
  289.     move.w        #[%1000000111100000!$8200],$96(a6)
  290.     lea        oldirq(pc),a0
  291.     move.l        $6c.w,(a0)
  292.     lea        newirq(pc),a0
  293.     move.l        a0,$6c.w
  294.     move.w        #$7fff,$9c(a6)
  295.     move.w        #$c020,$9a(a6)
  296.     rts
  297. wait_vert_blank
  298.     btst        #0,$5(a6)
  299.     beq.s        wait_vert_blank
  300. .loop    btst        #0,$5(a6)
  301.     bne.s        .loop
  302.     rts
  303. awake_system
  304.     move.w        #$7fff,$9a(a6)        $dff000 in a6 !!!
  305.     bsr.b        wait_vert_blank
  306.     move.w        #$7fff,$96(a6)
  307.     move.l        oldcop1(pc),$80(a6)
  308.     move.l        oldcop2(pc),$84(a6)
  309.     move.l        oldirq(pc),$6c.w
  310.     move.w        dmacon(pc),d0
  311.     or.w        #$8000,d0
  312.     move.w        d0,$96(a6)        
  313.     move.w        adkcon(pc),d0
  314.     or.w        #$8000,d0
  315.     move.w        d0,$9e(a6)
  316.     move.w        intena(pc),d0
  317.     or.w        #$c000,d0
  318.     move.w        #$7fff,$9c(a6)
  319.     move.w        d0,$9a(a6)
  320.     rts
  321. oldirq    dc.l    " by "
  322. oldcop1    dc.l    "Thom"
  323. oldcop2    dc.l    "as K"
  324. intena    dc.w    "es"
  325. dmacon    dc.w    "sl"
  326. adkcon    dc.w    "er"
  327. scrptr    dc.l    $20000000
  328. col_cnt dc.w    COL_VERZ
  329. page_cnt dc.w    PAGE_VERZ
  330. page_ptr dc.l    0
  331. counter    dc.b    0
  332. dummy    dc.b    0
  333. gfxname    dc.b    "graphics.library",0
  334. fontlst    dc.b    "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
  335.     dc.b    " 0123456789"
  336.     dc.b    "!?.,:;()"
  337.     dc.b    "#/'+-&*$©"
  338.     dc.b    "abcdefghijklmnopqrstuvwxyz",0
  339. proplst    dc.b    8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8
  340.     dc.b    7,8,8,8,8,8,8,8,8,8,8
  341.     dc.b    4,8,4,5,4,5,8,8
  342.     dc.b    8,8,5,8,8,8,8,7,8
  343.     dc.b    8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8
  344.  
  345.  
  346.     * AB HIER IST DEIN SCROLLTEXT ...
  347.  
  348. scrtext    dc.b    "AMIGA INDUSTRIES & SPREADPOINT present in 1991: "
  349.     dc.b    " * 3rd Day II *                              "
  350.     dc.b    "Coded as lots of our high quality utilities by " 
  351.     dc.b    "SECTION 9/AI for AISP !!! So this fine piece finally"
  352.     dc.b    " released on the fucking Crystal - Anarchy - Silents"
  353.     dc.b    " party in Denmark on 27th December 1991 !!! This was our"
  354.     dc.b    " year... We joined our powers together on friendship "
  355.     dc.b    "and not to be the fastest or the best or anything like "
  356.     dc.b    "this shit.. So Munster and me also did some hard critics "
  357.     dc.b    "on the scene - and so lots of guys dislike us - but we "
  358.     dc.b    "are against the business... So no matter what will happen -"
  359.     dc.b    " Amiga Industries & Spreadpoint will stay forever in Co-"
  360.     dc.b    "Opperation - until our crews are alive ...   'signed: Ai & Sp"
  361.     dc.b    " - '86 till no end...  So greet us only as aisp in the  "
  362.     dc.b    "future ....  wait for our soon comging demos from tip "
  363.     dc.b    "and amicom - and of course always some nice utilities...    "
  364.     dc.b    " Andy over to Section 9...                                "
  365.     dc.b    " By the way: this small piece is called "
  366.     dc.b    "'GRMBLWRZ!' ... You want to know what that "
  367.     dc.b    "means ...              We don't know!                   "
  368.     dc.b    "When Section 9 coded this, suddenly "
  369.     dc.b    "some Lemmings jumped out of "
  370.     dc.b    "his monitor (with parachutes), climbed his keyboard "
  371.     dc.b    "(some were climbers) and walked around on the keys. "
  372.     dc.b    " That's where this name came from ........ We guess.               "
  373.     dc.b    "                            "
  374.     dc.b    "Press right mouse-button to quit.                           "
  375.     dc.b    "Now restarting ...                         "
  376.     dc.b    "            "
  377.     dc.b    0    * <- END OF SCROLLTEXT
  378.  
  379.  
  380.     * AB HIER DIE PAGES (JEWEILS GENAU 15 ZEILEN MIT 40 ZEICHEN!!)
  381.     * es ist egal, wieviele pages angehängt werden, Hauptsache die
  382.     * Länge und die Breite stimmen (15*40)                   [SEC]
  383.  
  384. pages    dc.b    "  ************************************  "
  385.     dc.b    "  *                                  *  "
  386.     dc.b    "  *  AMIGA INDUSTRIES & SPREADPOINT  *  "
  387.     dc.b    "  *                                  *  "
  388.     dc.b    "  ************************************  "
  389.     dc.b    "                                        "
  390.     dc.b    "    present in the last days of 1991:   "    ; first/1992 ?!
  391.     dc.b    "                                        "
  392.     dc.b    "        3rd Day II - Gfx-Ripper         "
  393.     dc.b    "        -----------------------         "
  394.     dc.b    "                                        "
  395.     dc.b    "      Now working also with OS2.0       "
  396.     dc.b    "    and with 1 MB CHIP-Ram machines.    "
  397.     dc.b    "                                        "
  398.     dc.b    "      * Press left mouse-button *       "
  399.  
  400.     dc.b    "                                        "
  401.     dc.b    "  The 3rd Day GFX-Ripper was originally "
  402.     dc.b    "   made by SvEinstein of Action Force   "
  403.     dc.b    " and adapted to OS 2.0 and 1MB CHIP-Ram "
  404.     dc.b    "        by Section 9 of AI/SP.          "
  405.     dc.b    "                                        "
  406.     dc.b    " Note to all Coders:                    "
  407.     dc.b    " -------------------                    "
  408.     dc.b    " The ECS isn't 100 percent compatible   "
  409.     dc.b    " to the 'old' (v1.3) system.            "
  410.     dc.b    " If you have an own copperlist, you     "
  411.     dc.b    " must set the DIWSTRT ($008e) at the    "
  412.     dc.b    " beginning of your coppercrap, other-   "
  413.     dc.b    " wise there will be shown NO planes.    "
  414.     dc.b    "                                        "
  415.  
  416.     dc.b    "                                        " * DIE
  417.     dc.b    "  * AMIGA INDUSTRIES & SPREADPOINT *    " * SEITE
  418.     dc.b    "     SEND FRIENDLY HANDSHAKES TO:       " * BLEIBT
  419.     dc.b    "                                        " * SO
  420.     dc.b    "  SUBWAY (GEORGE & MARC) - TRSI (ALL)   " * !!
  421.     dc.b    "  FAIRLIGHT - LEGEND - SCOOPEX - SR     "
  422.     dc.b    "  PRISONERS - QUARTEX - CRYSTAL - HQC   "
  423.     dc.b    "  THE WIZARDS - PHENOMENA - CRUSADERS   "
  424.     dc.b    "  UNITED FORCES - NEMESIS - BLACK MONKS "
  425.     dc.b    "  THE SILENTS - ANARCHY - INV. CRIME    "
  426.     dc.b    "  SWITCH - SKYLINE - AGILE - QUADLITE   "
  427.     dc.b    "  SUPPLEX - FACTOR 5 - STARFRONTIERS    "
  428.     dc.b    "  BRAINSTORM - THE COMPANY - ALCATRAZ   "
  429.     dc.b    "  VENTURE - ALPHA FLIGHT - BEERMACHT    "
  430.     dc.b    "                                        "
  431.  
  432.     dc.b    "                                        " * DIE
  433.     dc.b    "                                        " * SEITE
  434.     DC.B    "                                        "
  435.     dc.b    "  ORACLE - AVENGER - VISION FACTORY     " * BLEIBT
  436.     dc.b    "  DEFJAM & CCS - HORIZON - SCROOGE      " * SO
  437.     dc.b    "  INFINITVE PERFECTION - POWER -        " * !!
  438.     dc.b    "  FCKW - BYTERAPERS - ACCESSION - IBB   "
  439.     dc.b    "  SETROX - D-TECT - PURE METAL CODERS   "
  440.     dc.b    "  RAZOR 1911 - DIGITAL - LEPROSY        "
  441.     dc.b    "  IMPACT INC. - COMA - CYTAX - DEFCON 1 "
  442.     dc.b    "  PBA - VISION - REBELS - SANITY        "
  443.     dc.b    "  PROMAX & KEFRENS - NETWORK - FLASH    "
  444.     dc.b    "                                        "
  445.     dc.b    "                                        "
  446.     dc.b    "                                        "
  447.  
  448.     dc.b    "                                        " * DIE
  449.     dc.b    "                                        " * SEITE
  450.     dc.b    "  SCAMPY - HOMEBOY & THUNDERCAT         " * BLEIBT
  451.     dc.b    "  SAURON - PHIL DOUGLAS - DEPECHE       " * AUCH
  452.     dc.b    "  JOE - TIP & MANTRONIX - PANTHER       " * SO
  453.     dc.b    "  CHAOS - LOWTEC - E605 - JOE PANIC     " * !!
  454.     dc.b    "  N.O.I.S.E. - RADWAR - MR. ZEROPAGE    " * !!!!!
  455.     dc.b    "  VOGUE - THOMAS LANDBOURG - ULTIMAX    "
  456.     dc.b    "  PHIL/THRUST - PARADISE - KRISTALL/SR  "
  457.     dc.b    "  BLACK GHOST & STARGROOVE - WHITEHEAD  "
  458.     dc.b    "  MAHONEY - WIZLER - JOHN PLAYER -      "
  459.     dc.b    "  IRATA - FLYNN - HAMSTER - DDT - E$G   "
  460.     dc.b    "  ICS - AND ALL OUR OTHER FRIENDS...    "
  461.     dc.b    "                                        "
  462.     dc.b    "                                        "
  463.  
  464.     dc.b    "                                        " * DIE
  465.     dc.b    "           * THE CREDITS *              " * SEITE
  466.     dc.b    "           ---------------              " * BLEIBT
  467.     dc.b    "                                        " * SO
  468.     dc.b    "    GRMBLWRZ!CODE ........ SECTION 9    " * !!
  469.     dc.b    "    GRMBLWRZ!TEXTS ............ ANDY    "
  470.     dc.b    "    GRMBLWRZ!GFX ... SECTION 9 & TOM    "
  471.     dc.b    "    GRMBLWRZ!MUZAK ............ EDDY    "
  472.     dc.b    "                                        "
  473.     dc.b    "                                        "
  474.     dc.b    "  This small masterpiece is of course   "
  475.     dc.b    " 100 percent OS2.0 compatible and will  "
  476.     dc.b    "     work on every 'normal' Amiga.      "
  477.     dc.b    "  There is NO absolut adress in here!   "
  478.     dc.b    "                                        "
  479.  
  480.     dc.b    "       **************************       " * DIE
  481.     dc.b    "       * SECTION 9 special PAGE *       " * SEITE
  482.     dc.b    "       **************************       " * BLEIBT
  483.     dc.b    "                                        " * AUCH
  484.     dc.b    "This small GRMBLWRZ! was written in half" * SO
  485.     dc.b    "an hour by me, myself & some lemmings!  " * !!
  486.     dc.b    "                                        " * !!!!!
  487.     dc.b    "       Special Greeetix fly to:         "
  488.     dc.b    "                                        "
  489.     dc.b    "Alex - MaC! - Biggi - Christine - Simone"
  490.     dc.b    "Astrid (2x) - Sybille - Claudia - Steffi"
  491.     dc.b    "all A500+ Freax - Ray Cokes (MTV Europe)"
  492.     dc.b    "Nils & Frank (N.O.I.S.E. Produktions)   "
  493.     dc.b    "my dog - my mouse - my phone - and to a "
  494.     dc.b    "special person (D.) who will know.   ;-)"
  495.  
  496.  
  497.     dc.b    0    * <- END OF PAGES
  498.  
  499.     cnop    0,2
  500. cols    dc.w    $ffc,$fec,$fdc,$fcc,$fce,$fcf,$dcf,$ccf,$cdf,$cff
  501.     dc.w    $cfd,$cfc,$efc,$ffc,$ffe
  502.     dc.w    $886,$776,$876,$766,$767,$767,$768,$668,$678,$788
  503.     dc.w    $687,$686,$776,$776,$887
  504.     dc.w    $443,$443,$433,$433,$433,$434,$334,$334,$334,$344
  505.     dc.w    $344,$343,$443,$443,$444
  506.  
  507.     * Amiga Noise/ProTracker (32 Instr.) Replayroutine
  508.     * ------------------------------------------------
  509.     * fixed as ASM-Reloc-Code by SECTION 9 in 1991
  510. INIT_MUSIC
  511.     movem.l    d0-a6,-(a7)
  512.     lea    nt_data,a0
  513.     move.l    a0,a1
  514.     lea    $3b8(a1),a1
  515.     moveq    #$7f,d0
  516.     moveq    #0,d1
  517. nt_loop move.l    d1,d2
  518.     subq.w    #1,d0
  519. nt_lop2 move.b    (a1)+,d1
  520.     cmp.b    d2,d1
  521.     bgt.s    nt_loop
  522.     dbf    d0,nt_lop2
  523.     addq.b    #1,d2
  524.     lea    nt_samplestarts(pc),a1
  525.     asl.l    #8,d2
  526.     asl.l    #2,d2
  527.     add.l    #$43c,d2
  528.     add.l    a0,d2
  529.     move.l    d2,a2
  530.     moveq    #$1e,d0
  531. nt_lop3    moveq    #0,d7
  532.     move.l    d7,(a2)
  533.     move.l    a2,(a1)+
  534.     moveq    #0,d1
  535.     move.w    42(a0),d1
  536.     asl.l    #1,d1
  537.     add.l    d1,a2
  538.     lea    $1e(a0),a0
  539.     dbf    d0,nt_lop3
  540.     lea    nt_speed(pc),a0
  541.     move.b    #6,(a0)
  542.     lea    $dff0a8,a0
  543.     moveq    #0,d0
  544.     move.w    d0,(a0)
  545.     move.w    d0,$10(a0)
  546.     move.w    d0,$20(a0)
  547.     move.w    d0,$30(a0)
  548.     lea    nt_songpos(pc),a0
  549.     move.b    d0,(a0)+
  550.     move.w    d0,(a0)+        nt_pattpos
  551.     move.b    d0,(a0)            nt_counter
  552.     bset    #1,$bfe001
  553.     bra.b    nt_silence
  554. END_MUSIC
  555.     movem.l    d0-a6,-(a7)
  556.     moveq    #0,d0
  557.     bclr    #1,$bfe001
  558. nt_silence
  559.     lea    $dff000,a0
  560.     move.w    d0,$a8(a0)
  561.     move.w    d0,$b8(a0)
  562.     move.w    d0,$c8(a0)
  563.     move.w    d0,$d8(a0)
  564.     move.w    #$f,$96(a0)
  565.     movem.l    (a7)+,d0-a6
  566.     rts
  567. PLAY_MUSIC
  568.     movem.l    d0-a6,-(a7)
  569.     moveq    #0,d0
  570.     lea    logo+[[352/8]*51]+2,a0
  571.     move.l    d0,(a0)
  572.     lea    logo+[[352/8]*52]+2,a0
  573.     move.l    d0,(a0)
  574.     lea    logo+[[352/8]*53]+2,a0
  575.     move.l    d0,(a0)
  576.     lea    logo+[[352/8]*54]+2,a0
  577.     move.l    d0,(a0)
  578.     lea    logo+[[352/8]*55]+2,a0
  579.     move.l    d0,(a0)
  580.     lea    nt_data,a0
  581.     lea    nt_counter(pc),a1
  582.     addq.b    #$1,(a1)
  583.     move.b    (a1),D0
  584.     cmp.b    nt_speed(pc),D0
  585.     blt.s    nt_nonew
  586.     moveq    #0,d7
  587.     move.b    d7,(a1)
  588.     bra.w    nt_getnew
  589. nt_nonew 
  590.     lea    nt_voice1(pc),a6
  591.     lea    $dff0a0,a5
  592.     bsr.w    nt_checkcom
  593.     lea    nt_voice2(pc),a6
  594.     lea    $dff0b0,a5
  595.     bsr.w    nt_checkcom
  596.     lea    nt_voice3(pc),a6
  597.     lea    $dff0c0,a5
  598.     bsr.w    nt_checkcom
  599.     lea    nt_voice4(pc),a6
  600.     lea    $dff0d0,a5
  601.     bsr.w    nt_checkcom
  602.     bra.w    nt_endr
  603. nt_arpeggio 
  604.     moveq    #0,d0
  605.     move.b    nt_counter(pc),d0
  606.     divs    #$3,d0
  607.     swap    d0
  608.     cmp.w    #$0,d0
  609.     beq.s    nt_arp2
  610.     cmp.w    #$2,d0
  611.     beq.s    nt_arp1
  612.     moveq    #0,d0
  613.     move.b    $3(a6),d0
  614.     lsr.b    #4,d0
  615.     bra.s    nt_arp3
  616. nt_arp1 moveq    #0,d0
  617.     move.b    $3(a6),d0
  618.     and.b    #$f,d0
  619.     bra.s    nt_arp3
  620. nt_arp2 move.w    $10(a6),d2
  621.     bra.s    nt_arp4
  622. nt_arp3 asl.w    #1,d0
  623.     moveq    #0,d1
  624.     move.w    $10(a6),d1
  625.     lea    nt_periods(pc),a0
  626.     moveq    #$24,d7
  627. nt_arploop 
  628.     move.w    (a0,d0.w),d2
  629.     cmp.w    (a0),d1
  630.     bge.s    nt_arp4
  631.     addq.l    #2,a0
  632.     dbf    d7,nt_arploop
  633.     rts
  634. nt_arp4 move.w    d2,$6(a5)
  635.     rts
  636. nt_getnew 
  637.     lea    nt_data,a0
  638.     move.l    a0,a3
  639.     move.l    a0,a2
  640.     lea    $c(a3),a3
  641.     lea    $3b8(a2),a2
  642.     lea    $43c(a0),a0
  643.     moveq    #0,d0
  644.     move.l    d0,d1
  645.     move.b    nt_songpos(pc),d0
  646.     move.b    (a2,d0.w),d1
  647.     asl.l    #8,d1
  648.     asl.l    #2,d1
  649.     add.w    nt_pattpos(pc),d1
  650.     lea    nt_dmacon(pc),a1
  651.     moveq    #0,d7
  652.     move.w    d7,(a1)
  653.     lea    $dff0a0,a5
  654.     lea    nt_voice1(pc),a6
  655.     bsr.s    nt_playvoice
  656.     lea    $dff0b0,a5
  657.     lea    nt_voice2(pc),a6
  658.     bsr.s    nt_playvoice
  659.     lea    $dff0c0,a5
  660.     lea    nt_voice3(pc),a6
  661.     bsr.s    nt_playvoice
  662.     lea    $dff0d0,a5
  663.     lea    nt_voice4(pc),a6
  664.     bsr.s    nt_playvoice
  665.     bra.w    nt_setdma
  666. nt_playvoice 
  667.     move.l    (a0,d1.l),(a6)
  668.     addq.l    #4,d1
  669.     moveq    #0,d2
  670.     move.b    $2(a6),d2
  671.     and.b    #$f0,d2
  672.     lsr.b    #4,d2
  673.     move.b    (a6),d0
  674.     and.b    #$f0,d0
  675.     or.b    d0,d2
  676.     tst.b    d2
  677.     beq.w    nt_setregs
  678.     movem.l    d0/a5,-(a7)        © SECTION 9
  679.     sub.l    #$dff0a0,a5
  680.     move.w    a5,d0
  681.     lsr.w    #4,d0
  682.     lea    logo+[[352/8]*51]+2,a5
  683.     move.b    #$70,0(a5,d0.w)
  684.     lea    logo+[[352/8]*52]+2,a5
  685.     move.b    #$f8,0(a5,d0.w)
  686.     lea    logo+[[352/8]*53]+2,a5
  687.     move.b    #$f8,0(a5,d0.w)
  688.     lea    logo+[[352/8]*54]+2,a5
  689.     move.b    #$f8,0(a5,d0.w)
  690.     lea    logo+[[352/8]*55]+2,a5
  691.     move.b    #$70,0(a5,d0.w)
  692.     movem.l    (a7)+,d0/a5
  693.     moveq    #0,d3
  694.     lea    nt_samplestarts(pc),a1
  695.     move.l    d2,d4
  696.     subq.l    #$1,d2
  697.     asl.l    #2,d2
  698.     mulu    #$1e,d4
  699.     move.l    (a1,d2.l),$4(a6)
  700.     move.w    (a3,d4.l),$8(a6)
  701.     move.w    $2(a3,d4.l),$12(a6)
  702.     move.w    $4(a3,d4.l),d3
  703.     tst.w    d3
  704.     beq.s    nt_noloop
  705.     move.l    $4(a6),d2
  706.     asl.w    #1,d3
  707.     add.l    d3,d2
  708.     move.l    d2,$a(a6)
  709.     move.w    $4(a3,d4.l),d0
  710.     add.w    $6(a3,d4.l),d0
  711.     move.w    d0,8(a6)
  712.     move.w    $6(a3,d4.l),$e(a6)
  713.     move.w    $12(a6),$8(a5)
  714.     bra.s    nt_setregs
  715. nt_noloop 
  716.     move.l    $4(a6),d2
  717.     add.l    d3,d2
  718.     move.l    d2,$a(a6)
  719.     move.w    $6(a3,d4.l),$e(a6)
  720.     move.w    $12(a6),$8(a5)
  721. nt_setregs 
  722.     move.w    (a6),d0
  723.     and.w    #$fff,d0
  724.     beq.w    nt_checkcom2
  725.     move.b    $2(a6),d0
  726.     and.b    #$F,d0
  727.     cmp.b    #$3,d0
  728.     bne.s    nt_setperiod
  729.     bsr.w    nt_setmyport
  730.     bra.w    nt_checkcom2
  731. nt_setperiod 
  732.     move.w    (a6),$10(a6)
  733.     and.w    #$fff,$10(a6)
  734.     move.w    $14(a6),d0
  735.     move.w    d0,$dff096
  736.     moveq    #0,d7
  737.     move.b    d7,$1b(a6)
  738.     move.l    $4(a6),(a5)
  739.     move.w    $8(a6),$4(a5)
  740.     move.w    $10(a6),d0
  741.     and.w    #$fff,d0
  742.     move.w    d0,$6(a5)
  743.     move.w    $14(a6),d0
  744.     lea    nt_dmacon(pc),a1
  745.     or.w    d0,(a1)
  746.     bra.w    nt_checkcom2
  747. nt_setdma 
  748.     move.w    #$12c,d0
  749. nt_wait dbf    d0,nt_wait
  750.     move.w    nt_dmacon(pc),d0
  751.     or.w    #$8000,d0
  752.     move.w    d0,$dff096
  753.     move.w    #$12c,d0
  754. nt_wai2 dbf    d0,nt_wai2
  755.     lea    $dff000,a5
  756.     lea    nt_voice4(pc),a6
  757.     move.l    $a(a6),$d0(a5)
  758.     move.w    $e(a6),$d4(a5)
  759.     lea    nt_voice3(pc),a6
  760.     move.l    $a(a6),$c0(a5)
  761.     move.w    $e(a6),$c4(a5)
  762.     lea    nt_voice2(pc),a6
  763.     move.l    $a(a6),$b0(a5)
  764.     move.w    $e(a6),$b4(a5)
  765.     lea    nt_voice1(pc),a6
  766.     move.l    $a(a6),$a0(a5)
  767.     move.w    $e(a6),$a4(a5)
  768.     lea    nt_pattpos(pc),a1
  769.     add.w    #$10,(a1)
  770.     cmp.w    #$400,(a1)
  771.     bne.s    nt_endr
  772. nt_nex    lea    nt_pattpos(pc),a1
  773.     moveq    #0,d7
  774.     move.w    d7,(a1)
  775.     lea    nt_break(pc),a1
  776.     moveq    #0,d7
  777.     move.b    d1,(a1)
  778.     lea    nt_songpos(pc),a1
  779.     addq.b    #1,(a1)
  780.     and.b    #$7f,(a1)
  781.     move.b    (a1),d1
  782.     cmp.b    nt_data+$3b6,d1
  783.     bne.s    nt_endr
  784.     move.b    nt_data+$3b7,(a1)
  785. nt_endr lea    nt_break(pc),a1
  786.     tst.b    (a1)
  787.     bne.s    nt_nex
  788.     movem.l    (a7)+,d0-a6
  789.     rts
  790. nt_setmyport 
  791.     move.w    (a6),d2
  792.     and.w    #$fff,d2
  793.     move.w    d2,$18(a6)
  794.     move.w    $10(a6),d0
  795.     moveq    #0,d7
  796.     move.b    d7,$16(a6)
  797.     cmp.w    d0,d2
  798.     beq.s    nt_clrport
  799.     bge.s    nt_rt
  800.     move.b    #$1,$16(a6)
  801.     rts
  802. nt_clrport 
  803.     moveq    #0,d7
  804.     move.w    d7,$18(a6)
  805. nt_rt     rts
  806. nt_myport 
  807.     move.b    $3(a6),d0
  808.     beq.s    nt_myslide
  809.     move.b    d0,$17(a6)
  810.     moveq    #0,d7
  811.     move.b    d7,$3(a6)
  812. nt_myslide 
  813.     tst.w    $18(a6)
  814.     beq.s    nt_rt
  815.     moveq    #0,d0
  816.     move.b    $17(a6),d0
  817.     tst.b    $16(a6)
  818.     bne.s    nt_mysub
  819.     add.w    d0,$10(a6)
  820.     move.w    $18(a6),d0
  821.     cmp.w    $10(a6),d0
  822.     bgt.s    nt_myok
  823.     move.w    $18(a6),$10(a6)
  824.     moveq    #0,d7
  825.     move.w    d7,$18(a6)
  826. nt_myok move.w    $10(a6),$6(a5)
  827.     rts
  828. nt_mysub 
  829.     sub.w    d0,$10(a6)
  830.     move.w    $18(a6),d0
  831.     cmp.w    $10(a6),d0
  832.     blt.s    nt_myok
  833.     move.w    $18(a6),$10(a6)
  834.     moveq    #0,d7
  835.     move.w    d7,$18(a6)
  836.     move.w    $10(a6),$6(a5)
  837.     rts
  838. nt_vib     move.b    $3(a6),d0
  839.     beq.s    nt_vi
  840.     move.b    d0,$1a(a6)
  841. nt_vi     move.b    $1b(a6),d0
  842.     lea    nt_sin(pc),a4
  843.     lsr.w    #$2,d0
  844.     and.w    #$1f,d0
  845.     moveq    #0,d2
  846.     move.b    (a4,d0.w),d2
  847.     move.b    $1a(a6),d0
  848.     and.w    #$f,d0
  849.     mulu    d0,d2
  850.     lsr.w    #$6,d2
  851.     move.w    $10(a6),d0
  852.     tst.b    $1b(a6)
  853.     bmi.s    nt_vibmin
  854.     add.w    d2,d0
  855.     bra.s    nt_vib2
  856. nt_vibmin 
  857.     sub.w    d2,d0
  858. nt_vib2 move.w    d0,$6(a5)
  859.     move.b    $1a(a6),d0
  860.     lsr.w    #$2,d0
  861.     and.w    #$3c,d0
  862.     add.b    d0,$1b(a6)
  863.     rts
  864. nt_nop     move.w    $10(a6),$6(a5)
  865.     rts
  866. nt_checkcom 
  867.     move.w    $2(a6),d0
  868.     and.w    #$fff,d0
  869.     beq.s    nt_nop
  870.     move.b    $2(a6),d0
  871.     and.b    #$f,d0
  872.     tst.b    d0
  873.     beq.w    nt_arpeggio
  874.     cmp.b    #$1,d0
  875.     beq.s    nt_portup
  876.     cmp.b    #$2,d0
  877.     beq.w    nt_portdown
  878.     cmp.b    #$3,d0
  879.     beq.w    nt_myport
  880.     cmp.b    #$4,d0
  881.     beq.w    nt_vib
  882.     move.w    $10(a6),$6(a5)
  883.     cmp.b    #$a,d0
  884.     beq.s    nt_volslide
  885.     rts
  886. nt_volslide 
  887.     moveq    #0,d0
  888.     move.b    $3(a6),d0
  889.     lsr.b    #4,d0
  890.     tst.b    d0
  891.     beq.s    nt_voldown
  892.     add.w    d0,$12(a6)
  893.     cmp.w    #$40,$12(a6)
  894.     bmi.s    nt_vol2
  895.     move.w    #$40,$12(a6)
  896. nt_vol2 move.w    $12(a6),$8(a5)
  897.     rts
  898. nt_voldown 
  899.     moveq    #0,d0
  900.     move.b    $3(a6),d0
  901.     and.b    #$f,d0
  902.     sub.w    d0,$12(a6)
  903.     bpl.s    nt_vol3
  904.     moveq    #0,d7
  905.     move.w    d7,$12(a6)
  906. nt_vol3 move.w    $12(a6),$8(a5)
  907.     rts
  908. nt_portup 
  909.     moveq    #0,d0
  910.     move.b    $3(a6),d0
  911.     sub.w    d0,$10(a6)
  912.     move.w    $10(a6),d0
  913.     and.w    #$fff,d0
  914.     cmp.w    #$71,d0
  915.     bpl.s    nt_por2
  916.     and.w    #$f000,$10(a6)
  917.     or.w    #$71,$10(a6)
  918. nt_por2 move.w    $10(a6),d0
  919.     and.w    #$fff,d0
  920.     move.w    d0,$6(a5)
  921.     rts
  922. nt_portdown 
  923.     moveq    #0,d0
  924.     move.b    $3(a6),d0
  925.     add.w    d0,$10(a6)
  926.     move.w    $10(a6),d0
  927.     and.w    #$fff,d0
  928.     cmp.w    #$358,d0
  929.     bmi.s    nt_por3
  930.     and.w    #$f000,$10(a6)
  931.     or.w    #$358,$10(a6)
  932. nt_por3 move.w    $10(a6),d0
  933.     and.w    #$fff,d0
  934.     move.w    d0,$6(a5)
  935.     rts
  936. nt_checkcom2 
  937.     move.b    $2(a6),d0
  938.     and.b    #$f,d0
  939.     cmp.b    #$e,d0
  940.     beq.s    nt_setfilt
  941.     cmp.b    #$d,d0
  942.     beq.s    nt_pattbreak
  943.     cmp.b    #$b,d0
  944.     beq.s    nt_posjmp
  945.     cmp.b    #$c,d0
  946.     beq.s    nt_setvol
  947.     cmp.b    #$f,d0
  948.     beq.s    nt_setspeed
  949.     rts
  950. nt_setfilt 
  951.     move.b    $3(a6),d0
  952.     and.b    #$1,d0
  953.     asl.b    #$1,d0
  954.     and.b    #$fd,$bfe001
  955.     or.b    d0,$bfe001
  956.     rts
  957. nt_pattbreak 
  958.     lea    nt_break(pc),a1
  959.     not.b    (a1)
  960.     rts
  961. nt_posjmp 
  962.     move.b    $3(a6),d0
  963.     subq.b    #$1,d0
  964.     lea    nt_songpos(pc),a1
  965.     move.b    d0,(a1)
  966.     lea    nt_break(pc),a1
  967.     not.b    (a1)
  968.     rts
  969. nt_setvol 
  970.     cmp.b    #$40,$3(a6)
  971.     ble.s    nt_vol4
  972.     move.b    #$40,$3(a6)
  973. nt_vol4 move.b    $3(a6),$8(a5)
  974.     rts
  975. nt_setspeed 
  976.     cmp.b    #$1f,$3(a6)
  977.     ble.s    nt_sets
  978.     move.b    #$1f,$3(a6)
  979. nt_sets move.b    $3(a6),d0
  980.     beq.s    nt_rts2
  981.     lea    nt_speed(pc),a1
  982.     move.b    d0,(a1)
  983.     lea    nt_counter(pc),a1
  984.     moveq    #0,d7
  985.     move.b    d7,(a1)
  986. nt_rts2 rts
  987. nt_sin         dc.b    $00,$18,$31,$4a,$61,$78,$8d,$a1
  988.         dc.b    $b4,$c5,$d4,$e0,$eb,$f4,$fa,$fd
  989.         dc.b    $ff,$fd,$fa,$f4,$eb,$e0,$d4,$c5
  990.         dc.b    $b4,$a1,$8d,$78,$61,$4a,$31,$18
  991. nt_periods     dc.w    $0358,$0328,$02fa,$02d0,$02a6,$0280
  992.         dc.w    $025c,$023a,$021a,$01fc,$01e0
  993.         dc.w    $01c5,$01ac,$0194,$017d,$0168,$0153
  994.         dc.w    $0140,$012e,$011d,$010d,$00fe
  995.         dc.w    $00f0,$00e2,$00d6,$00ca,$00be,$00b4
  996.         dc.w    $00aa,$00a0,$0097,$008f,$0087
  997.         dc.w    $007f,$0078,$0071,$0000,$0000
  998. nt_speed     dc.b    0
  999. nt_songpos     dc.b    0
  1000. nt_pattpos     dc.w    0
  1001. nt_counter     dc.b    0
  1002. nt_break     dc.b    0
  1003. nt_dmacon     dc.w    0
  1004. nt_samplestarts dcb.l    31,0
  1005. nt_voice1     dcb.w    10,0
  1006.         dc.w    1
  1007.         dcb.w    3,0
  1008. nt_voice2     dcb.w    10,0
  1009.         dc.w    2
  1010.         dcb.w    3,0
  1011. nt_voice3     dcb.w    10,0
  1012.         dc.w    4
  1013.         dcb.w    3,0
  1014. nt_voice4     dcb.w    10,0
  1015.         dc.w    8
  1016.         dcb.w    3,0
  1017.  
  1018.     SECTION    this_is_chip,DATA_C
  1019. newcop    dc.w    $008e,$2479,$0090,$34c9
  1020.     dc.w    $0092,$0030,$0094,$00d8
  1021.     dc.w    $0102,$0000,$0104,$0000
  1022.     dc.w    $0100,$0000
  1023.     dc.w    $0180,$0000,$0182,$0eef,$0184,$0cce,$0186,$0bbc
  1024.     dc.w    $0188,$099a,$018a,$0778,$018c,$0556,$018e,$0334
  1025.     dc.w    $01a2,$0445,$01a4,$0667,$01a6,$0889
  1026. star_p    dc.w    $0120,$0000,$0122,$0000,$0124,$0000,$0126,$0000
  1027.     dc.w    $0128,$0000,$012a,$0000,$012c,$0000,$012e,$0000
  1028.     dc.w    $0130,$0000,$0132,$0000,$0134,$0000,$0136,$0000
  1029.     dc.w    $0138,$0000,$013a,$0000,$013c,$0000,$013e,$0000
  1030.     dc.w    $2401,$fffe
  1031. emp1cop    dc.w    $e0,0,$e2,0,$e4,0
  1032.     dc.w    $0100,$1200
  1033.     dc.w    $2c01,$fffe,$0108,$0000,$010a,$0000,$0100,$3200
  1034. planes    dc.w    $e0,0,$e2,0,$e4,0,$e6,0,$e8,0,$ea,0
  1035.     dc.w    $5f01,$fffe,$0182,$0724,$5f51,$fffe,$0182,$0eef
  1036.     dc.w    $6001,$fffe,$0182,$0724,$6051,$fffe,$0182,$0eef
  1037.     dc.w    $6101,$fffe,$0182,$0724,$6151,$fffe,$0182,$0eef
  1038.     dc.w    $6201,$fffe,$0182,$0724,$6251,$fffe,$0182,$0eef
  1039.     dc.w    $6301,$fffe,$0182,$0724,$6351,$fffe,$0182,$0eef
  1040.  
  1041.     dc.w    $6401,$fffe
  1042. emp2cop    dc.w    $e0,0,$e2,0,$e4,0
  1043.     dc.w    $0100,$1200
  1044.  
  1045.     dc.w    $6909,$fffe,$0180,$001
  1046.     dc.w    $6a09,$fffe,$0180,$003
  1047.     dc.w    $6b09,$fffe,$0180,$005
  1048.     dc.w    $6c09,$fffe,$0180,$006,$0100,$0000
  1049.     dc.w    $6d09,$fffe,$0180,$007
  1050.     dc.w    $6e09,$fffe,$0180,$008
  1051.     dc.w    $6f09,$fffe,$0180,$007
  1052.     dc.w    $7009,$fffe,$0180,$006
  1053.     dc.w    $7109,$fffe,$0180,$005
  1054.     dc.w    $7201,$fffe
  1055. txtcop    dc.w    $e0,0,$e2,0,$e8,0,$ea,0
  1056. backcop    dc.w    $e4,0,$e6,0
  1057.     dc.w    $0190,$0005,$0192,$0004
  1058.     dc.w    $7401,$fffe,$0108,$0000,$010a,$0000,$0100,$3400
  1059. colscop    dc.w    $0182,$0000,$0184,$0000,$0186,$0000
  1060.     dc.w    $7e01,$fffe,$0182,$0000,$0184,$0000,$0186,$0000
  1061.     dc.w    $8801,$fffe,$0182,$0000,$0184,$0000,$0186,$0000
  1062.     dc.w    $9201,$fffe,$0182,$0000,$0184,$0000,$0186,$0000
  1063.     dc.w    $9c01,$fffe,$0182,$0000,$0184,$0000,$0186,$0000
  1064.     dc.w    $a601,$fffe,$0182,$0000,$0184,$0000,$0186,$0000
  1065.     dc.w    $b001,$fffe,$0182,$0000,$0184,$0000,$0186,$0000
  1066.     dc.w    $ba01,$fffe,$0182,$0000,$0184,$0000,$0186,$0000
  1067.     dc.w    $c401,$fffe,$0182,$0000,$0184,$0000,$0186,$0000
  1068.     dc.w    $ce01,$fffe,$0182,$0000,$0184,$0000,$0186,$0000
  1069.     dc.w    $d801,$fffe,$0182,$0000,$0184,$0000,$0186,$0000
  1070.     dc.w    $e201,$fffe,$0182,$0000,$0184,$0000,$0186,$0000
  1071.     dc.w    $ec01,$fffe,$0182,$0000,$0184,$0000,$0186,$0000
  1072.     dc.w    $f601,$fffe,$0182,$0000,$0184,$0000,$0186,$0000
  1073.     dc.w    $ffdf,$fffe,$0182,$0000,$0184,$0000,$0186,$0000
  1074.  
  1075.     dc.w    $0a01,$fffe,$0100,$0000
  1076.  
  1077.     dc.w    $0b09,$fffe,$0180,$006
  1078.     dc.w    $0c09,$fffe,$0180,$007
  1079.     dc.w    $0d09,$fffe,$0180,$008
  1080.     dc.w    $0e09,$fffe,$0180,$007
  1081.     dc.w    $0f09,$fffe,$0180,$006
  1082. emp3cop    dc.w    $e0,0,$e2,0,$e4,0
  1083.     dc.w    $0100,$1200
  1084.     dc.w    $1009,$fffe,$0180,$005
  1085.     dc.w    $1109,$fffe,$0180,$003
  1086.     dc.w    $1209,$fffe,$0180,$001
  1087.     dc.w    $1309,$fffe,$0180,$000
  1088.  
  1089.     dc.w    $1c01,$fffe,$0182,$0ccd,$0184,$0889,$0186,$0444,$0100,$000
  1090. scrcop    dc.w    $e0,0,$e2,0,$e4,0,$e6,0
  1091.     dc.w    $1d01,$fffe,$0108,$0002,$010a,$0002,$0100,$2200
  1092.     dc.w    $2501,$fffe
  1093. emp4cop    dc.w    $e0,0,$e2,0,$e4,0
  1094.     dc.w    $0100,$1200
  1095.     dc.l    $fffffffe
  1096.  
  1097.     INCDIR    "dh1:IncGfx/"
  1098. font    INCBIN    "Font.GRMBL.RAW"    ; 'Font2Ext.RAW'
  1099. logo    INCBIN    "LOGO.GRMBL.RAW"    ; 'Logo.RAW'
  1100. back    INCBIN    "BACK.GRMBL.RAW"    ; 'Back.RAW'
  1101.     INCDIR    "dh1:modules/"
  1102. nt_data    INCBIN    "mod.GRMBLWRZ!"        ; 'mod.dang'
  1103.     dc.l    0
  1104.     cnop    0,4
  1105. stars    dc.l    $1e891f00,$80000000,$20a12100,$00008000
  1106.     dc.l    $22662300,$80008000,$24d02500,$80000000
  1107.     dc.l    $26562700,$00008000,$282c2900,$80008000
  1108.     dc.l    $2a692b00,$80000000,$2cd32d00,$00008000
  1109.     dc.l    $2efe2f00,$80008000,$30603100,$80000000
  1110.     dc.l    $32493300,$00008000,$34663500,$80008000
  1111.     dc.l    $369f3700,$80000000,$38c43900,$00008000
  1112.     dc.l    $3a413b00,$80008000,$3c603d00,$80000000
  1113.     dc.l    $3ec23f00,$00008000,$40574100,$80008000
  1114.     dc.l    $42c44300,$80000000,$44614500,$00008000
  1115.     dc.l    $46524700,$80008000,$484e4900,$80000000
  1116.     dc.l    $4a6e4b00,$00008000,$4c0d4d00,$80008000
  1117.     dc.l    $4e894f00,$80000000,$50a15100,$00008000
  1118.     dc.l    $52665300,$80008000,$54d05500,$80000000
  1119.     dc.l    $56565700,$00008000,$585c5900,$80008000
  1120.     dc.l    $5ad05b00,$80000000,$5c895d00,$00008000
  1121.     dc.l    $5e715f00,$80008000,$60886100,$80000000
  1122.     dc.l    $629d6300,$00008000,$646b6500,$80008000
  1123.     dc.l    $66a86700,$80000000,$68746900,$00008000
  1124.     dc.l    $6ab46b00,$80008000,$6ccc6d00,$80000000
  1125.     dc.l    $10af1106,$00008000
  1126.     dc.l    $12ed1306,$80008000,$14561506,$80000000
  1127.     dc.l    $164f1706,$00008000,$188d1906,$80008000
  1128.     dc.l    $1a7c1b06,$80000000,$1ca11d06,$00008000
  1129.     dc.l    $1ed21f06,$80008000,$20d22106,$80000000
  1130.     dc.l    $22c22306,$00008000,$24b32506,$80008000
  1131.     dc.l    $26562706,$80000000,$282c2906,$80000000
  1132.     dc.l    $2a692b06,$80008000,$2cd32d06,$80000000
  1133.     dc.l    $2efe2f06,$00008000,$30603106,$80008000
  1134.     dc.l    $32493306,$80000000,$34663506,$00008000
  1135.     dc.l    $369f3706,$80008000,$38c43906,$80000000
  1136.     dc.l    $3a413b06,$00008000,$3cd33d06,$80008000
  1137.     dc.l    $00000000
  1138. end_stars
  1139.     
  1140.  
  1141.     SECTION    this_is_guess_what,BSS_C
  1142. scrdat    ds.b    368/8*[16+1]
  1143. txtdat    ds.b    [[352/8]*150]*2
  1144. empty    ds.b    [352/8]*30
  1145.